package com.example.floatingpopulation.service;

import com.example.floatingpopulation.controller.dto.UserLoginDTO;
import com.example.floatingpopulation.controller.dto.forgetPasswordDTO;
import com.example.floatingpopulation.controller.request.BaseRequest;
import com.example.floatingpopulation.controller.request.LoginRequest;
import com.example.floatingpopulation.controller.request.RegisterRequest;
import com.example.floatingpopulation.entity.Password;
import com.example.floatingpopulation.entity.User;
import com.github.pagehelper.PageInfo;
import org.springframework.stereotype.Service;

import java.util.List;

public interface UserService {
    List<User> list();

    PageInfo<User> page(BaseRequest BaseRequest);

    void save(User user);

    void update(User user);

    void deleteById(Integer id);

    UserLoginDTO login(LoginRequest request);
    User getById(Integer id);

    void resetPassword(User user);

    void updatePassword(Password password);

    Boolean register(RegisterRequest request);

    void resetPasswordForget(forgetPasswordDTO dto);
}
